clear
*ssc install blindschemes /* requires installing plotplain scheme - type findit plotplain in command window*/
set more off

use "780314464Brazil LAPOP AmericasBarometer 2017 V1.0_W.dta", clear 

/*code variables*/

/*marital_status: Marital Status
561 1 Single
462 2 Married
299 3 Common law marriage
70 4 Divorced
48 5 Separated
65 6 Widowed
27 7 Civil Union
*/
rename q11n marital_status

/*num_child: Number of Children
462 0 None
287 1 
325 2
196 3
118 4
65 5
35 6
7 7
14 8
9 9
3 10
2 11 
2 12
1 19
2 20 20+
1 .a Don't Know
3 .b No Response
*/
rename q12 num_child

/*married: Dummy variable created based on marital_status
Includes Married, Common law marriage, Separated, and Civil Union
696 0 No
836 1 Yes
*/
gen married = (marital_status == 2 | marital_status == 3 | marital_status == 5 | marital_status == 7)

/*urban: Dummy variable indicating whether subject lives in urban area
210 0 Lives in rural area
1322 1 Lives in urban area
*/

gen urban = (ur == 1)

/*city_size: Categorical variable indicating various types of cities
210 1 Rural Area
315 2 Small City
476 3 Medium City
495 4 Large City
35 5 National Capital (Metropolitan area)
*/

gen city_size = (-1*(tamano - 3)) + 3

/*region: Categorical variable indicating various subcountry regions
219 1 North
346 2 Northeast
217 3 Central west
491 4 Southeast
259 5 South
*/

gen region = estratopri - 1500

gen age = q2

/*agecat: Categorical variable for age used in demographic charts
509 1 16-29
505 2 30-44
349 3 45-59
169 4 60+
*/

egen agecat = cut(age), at(16,30,45,60,90)
replace agecat = 1 if(agecat == 16)
replace agecat = 2 if(agecat == 30)
replace agecat = 3 if(agecat == 45)
replace agecat = 4 if(agecat == 60)

/*male: Dummy variable for sex
772 0 Female
760 1 Male
*/

gen male = (q1 == 1)

/*trust_minhealth: Trust in the people who manage the Ministry of Health
370 1 Not at all
246 2
267 3
231 4
190 5
109 6
112 7 A lot
5 .a Don't Know
2 .b No Response
*/

gen trust_minhealth = braminh5

/*presidap: Presidential job approval
598 1 Very Bad
211 2 Bad
551 3 Fair (Neither Good nor Bad)
140 4 Good
22 5 Very Good
10 . Don't Know/No Response
*/

gen presidap = (-1*(m1 - 3)) + 3

/*last_vote: Previous vote in presidential election
33 0 None (Blank ballot)
519 1 Dilma Rousseff (PT)
140 2 A‚àö¬©cio Neves (PSDB)
54 3 Marina Silva (PSB)
76 4 Other
39 5 None (Null ballot)
282 .a Don't Know
58 .b No Response
331 .c Not Applicable
*/

gen last_vote = vb3n
replace last_vote = 1 if(last_vote == 1501)
replace last_vote = 2 if(last_vote == 1502)
replace last_vote = 3 if(last_vote == 1503)
replace last_vote = 4 if(last_vote == 1577)
replace last_vote = 5 if(last_vote == 97)

// 81% of respondents do not identify with a party
tab vb11, missing

/*pol_interest: Political interest
509 1 None
672 2 Little
161 3 Some
187 4 A lot
3 . No Response
*/

gen pol_interest = (-1*(pol1 - 2.5)) + 2.5

/*next_vote: Plan for next election
204 1 Wouldn't vote
672 2 Would vote for candidate or party of current president/administration
161 3 Would vote for a candidate or party different from current president/administration
777 4 Would go to vote but would leave the ballot blank/purposefully cancel my vote
41 .a Don't Know
27 .b No Response
*/

gen next_vote = vb20

/*consp_cabal: Believes major events controlled by a cabal
501 1 Not Correct
284 2 A Little Correct
406 3 More or Less Correct
268 4 Very Correct
46 .a Don't Know
26 .b No Response
*/

gen consp_cabal = consp1

/*consp_psychic: Believes in psychic powers
713 1 Not Correct
270 2 A Little Correct
320 3 More or Less Correct
186 4 Very Correct
29 .a Don't Know
14 .b No Response
*/

gen consp_psychic = consp2

/*consp_spirits: Believes spirits can communicate with the physical world
762 1 Not Correct
206 2 A Little Correct
286 3 More or Less Correct
236 4 Very Correct
25 .a Don't Know
17 .b No Response
*/

gen consp_spirits = consp3

/*consp_imp: Believes one cannot change important things in life
227 1 Not Correct
287 2 A Little Correct
392 3 More or Less Correct
588 4 Very Correct
20 .a Don't Know
18 .b No Response
*/

gen consp_imp = consp4

/*z_healthrisk: Risk of Zika to Health in Brazil
17 1 None
14 2 Very Low Risk
57 3 Low Risk
231 4 Moderate Risk
520 5 High Risk
690 6 Very High Risk
1 .a Don't Know
2 .b No Response
*/

gen z_healthrisk = zik1

/*z_t_sex: Believes Zika is transmitted through sex
736 1 Not Correct
135 2 A Little Correct
214 3 More or Less Correct
343 4 Very Correct
94 .a Don't Know
10 .b No Response
*/

gen z_t_sex = ziktf1

/*z_t_casualcont: Believes Zika is transmitted through casual contact
1142 1 Not Correct
115 2 A Little Correct
118 3 More or Less Correct
128 4 Very Correct
27 .a Don't Know
2 .b No Response
*/

gen z_t_casualcont = ziktf2

/*z_t_mosq: Believes Zika is transmitted through the bite of an infected mosquito
66 1 Not Correct
67 2 A Little Correct
141 3 More or Less Correct
1243 4 Very Correct
13 .a Don't Know
2 .b No Response
*/

gen z_t_mosq = ziktf3

/*z_c_gmomosq: Believes genetically modified mosquitoes caused the Zika outbreak
347 1 Not Correct
194 2 A Little Correct
393 3 More or Less Correct
493 4 Very Correct
86 .a Don't Know
19 .b No Response
*/

gen z_c_gmomosq = ziktf4

/*z_c_larvicide: Believes larvicide use has increased microcephaly cases
522 1 Not Correct
217 2 A Little Correct
305 3 More or Less Correct
423 4 Very Correct
53 .a Don't Know
12 .b No Response
*/

gen z_c_larvicide = zconsp1

/*z_c_vac: Believes vaccination of pregnant women has increased microcephaly cases
512 1 Not Correct
211 2 A Little Correct
324 3 More or Less Correct
413 4 Very Correct
57 .a Don't Know
15 .b No Response
*/

gen z_c_vac = zconsp2

/*z_p_larvicide: Approves use of larvicide to prevent the spread of Zika
84 1 Strongly disapprove
29 2
47 3
54 4
147 5
113 6
137 7
170 8
150 9
588 10 Strongly approve
7 .a Don't Know
6 .b No Response
*/

gen z_p_larvicide = zikpol1

/*z_p_dtap: Approves recommendation of DTaP vaccination for pregnant women
76 1 Strongly disapprove
29 2
31 3
40 4
118 5
115 6
122 7
171 8
162 9
627 10 Strongly approve
31 .a Don't Know
10 .b No Response
*/

gen z_p_dtap = zikpol2

/*z_p_gmomosq: Approves use of genetically modified mosquitoes to combat the spread of Zika
155 1 Strongly disapprove
60 2
55 3
72 4
148 5
134 6
164 7
170 8
138 9
422 10 Strongly approve
8 .a Don't Know
6 .b No Response
*/

gen z_p_gmomosq = zikpol3

/*z_p_homesearch: Approves of health workers entering homes to look for mosquitoes
229 1 Strongly disapprove
54 2
39 3
55 4
123 5
75 6
104 7
136 8
110 9
607 10 Strongly approve
*/

gen z_p_homesearch = zikpol4

/*z_d_clothing: Wears long clothing to protect from Zika
442 1 Never
380 2 Rarely
253 3 Sometimes
199 4 Almost always
255 5 Always
3 . No Response
*/

gen z_d_clothing = (-1*(zikpr1 - 3)) + 3

/*z_d_repellent: Uses mosquito repellent to protect from Zika
525 1 Never
291 2 Rarely
282 3 Sometimes
174 4 Almost always
258 5 Always
2 . Don't Know
*/

gen z_d_repellent = (-1*(zikpr2 - 3)) + 3

/*z_d_screens: Closes screens/windows to protect from Zika
611 1 Never
172 2 Rarely
149 3 Sometimes
131 4 Almost always
468 5 Always
1 . Don't Know
*/

gen z_d_screens = (-1*(zikpr3 - 3)) + 3

/*z_pamphlet: Took a Zika pamphlet
133 0 No
1398 1 Yes
1 . Don't Know
*/

gen z_pamphlet = (zikpamph == 1)

/*educ: Years of education
28 0 None
26 1 
34 2
47 3
111 4
81 5
62 6
77 7
150 8
121 9
107 10
504 11 
20 12
17 13
17 14
19 15
26 16
51 17
23 .a Don't Know
11 .b No Response

(0) - 0	Nenhum
(1) 1 ano	1° ano do primário (2° ano no sistema novo)
(2) 2 anos	2° ano do primário (3° ano no sistema novo)
(3) 3 anos	3° ano do primário (4° ano no sistema novo)
(4) 4 anos	4° ano do primário (5° ano no sistema novo)
(5) 5 anos	5° ano do primário (6° ano no sistema novo)
(6) 6 anos	6° ano do primário (7° ano no sistema novo)
(7) 7 anos	7° ano do primário (8° ano no sistema novo)
(8) 8 anos	8° ano do primário (9° ano no sistema novo)
(9) 9 anos	1° ano do secundário
(10) 10 anos	2° ano do secundário
(11) 11 anos	3° ano do secundário
(12) 12 anos	1° ano da universidade /superior não universitário
(13) 13 anos	2° ano da universidade /superior não universitário
(14) 14 anos	3° ano da universidade /superior não universitário
(15) 15 anos	4° ano da universidade /superior não universitário
(16) 16 anos	5° ano da universidade
(17) 17 anos	6° ano da universidade ou mais
*/

gen educ = ed

/*religion: Religion
776 1 Catholic 
158 2 Protestant, Mainline/Non-Evangelical Protestant
0 3 Another Eastern non-Christian religion 
113 4 None (Believes in a supreme entity but does not belong to any religion)
329 5 Evangelical and Protestant/Pentecostal Evangelical
4 6 Church of Jesus Christ of Latter-day Saints or LDS (Mormon)
24 7 Traditional or native religions
29 8 Spiritist Kardecist
14 12 Jehovah's Witness
0 10 Jewish
21 11 Agnostic or atheist / does not believe in God
38 12 Other
15 .a Don't Know
11 .b No Response
*/

gen religion = q3c
replace religion = 8 if(religion == 1501)
replace religion = 9 if(religion == 12)
replace religion = 12 if(religion == 77)

/*emp_status: Employment Status
500 1 Working
257 2 Not working at the moment, but have a job
270 3 Actively looking for a job
115 4 Student
161 5 Taking care of the home
156 6 Retired, pensioner or permanently disabled
70 7 Not working or looking for a job
2 .a Don't Know
1 .b No Response
*/

gen emp_status = ocup4a

/*z_a_screens: Visible window screens or mosquito nets
1075 1 None
369 2 Little
84 3 Some
4 4 A lot
*/

gen z_a_screens = zikarea1

/*z_a_stwater: Visible standing water in or around house
1087 1 None
304 2 Little
86 3 Some
55 4 A lot
*/

gen z_a_stwater = zikarea2

/*ethnicity: Ethnicity
453 1 White
104 2 Asian
48 3 Indigenous
248 4 Black
642 5 Mulatto
18 6 Other
13 .a Don't Know
6 .b No Response
*/

gen ethnicity = etid
replace ethnicity = 2 if(ethnicity == 1506)
replace ethnicity = 6 if(ethnicity == 7)

/*householdinc: Household Monthly Income
R$ = Brazilian real
23 0 None
178 1 Less than R$700 
203 2 R$700 - R$950
127 3 R$951 - R$1050
108 4 R$1051 - R$1200
70 5 R$1201 - R$1350
94 6 R$1351 - R$1500
71 7 R$1501 - R$1750
66 8 R$1751 - R$1950
96 9 R$1951 - R$2150
67 10 R$2151 - R$2350
51 11 R$2351 - R$2550
82 12 R$2551 - R$3150
55 13 R$3151 - R$3800
56 14 R$3801 - R$4950
50 15 R$4951 - R$6700
47 16 More than R$6700
38 .a Don't Know/Not applicable
11 .b No Response
*/

/*
       Left |        192       13.67       13.67
          2 |         82        5.84       19.50
          3 |        171       12.17       31.67
          4 |        157       11.17       42.85
          5 |        269       19.15       61.99
          6 |        114        8.11       70.11
          7 |         91        6.48       76.58
          8 |        121        8.61       85.20
          9 |         65        4.63       89.82
      Right |        143       10.18      100.00
*/

gen ideology=l1

gen householdinc = q10new
replace householdinc = .a if(householdinc == 20)

/*analysis*/

svyset upm [pw=wt], strata(estratopri)

*Scales:

*Cronbach's alpha

alpha z_t_sex z_t_mosq z_t_casualcont, item

*factor score

factor z_t_sex z_t_mosq z_t_casualcont, factors(2)
rotate, varimax

// Zika CT intercorrelation
*Cronbach's alpha

alpha z_c_gmomosq z_c_larvicide z_c_vac, item

*factor score

factor z_c_gmomosq z_c_larvicide z_c_vac, factors(2)
rotate, varimax

// Zika observations intercorrelation
*Cronbach's alpha

alpha z_a_screens z_a_stwater z_pamphlet, item

*factor score

factor z_a_screens z_a_stwater z_pamphlet, factors(2)
rotate, varimax

/*behavioral outcomes*/

svy: tab z_a_screens
svy: tab z_a_stwater
svy: tab z_t_sex

/*z_t_sex: Believes Zika is transmitted through sex
736 1 Not Correct
135 2 A Little Correct
214 3 More or Less Correct
343 4 Very Correct
94 .a Don't Know
10 .b No Response

        1 |      .5052
        2 |      .0944
        3 |      .1507
        4 |      .2497

*/

svy: tab z_t_casualcont

/*z_t_casualcont: Believes Zika is transmitted through casual contact
1142 1 Not Correct
115 2 A Little Correct
118 3 More or Less Correct
128 4 Very Correct
27 .a Don't Know
2 .b No Response

        1 |      .7513
        2 |      .0787
        3 |      .0817
        4 |      .0883

*/

svy: tab z_t_mosq

/*z_t_mosq: Believes Zika is transmitted through the bite of an infected mosquito
66 1 Not Correct
67 2 A Little Correct
141 3 More or Less Correct
1243 4 Very Correct
13 .a Don't Know
2 .b No Response

        1 |      .0416
        2 |       .043
        3 |      .0953
        4 |        .82
*/

svy: tab z_t_casualcont

/*z_t_mosq: Believes Zika is transmitted through the bite of an infected mosquito
66 1 Not Correct
67 2 A Little Correct
141 3 More or Less Correct
1243 4 Very Correct
13 .a Don't Know
2 .b No Response
*/

svy: tab z_t_mosq

/*z_c_gmomosq: Believes genetically modified mosquitoes caused the Zika outbreak
347 1 Not Correct
194 2 A Little Correct
393 3 More or Less Correct
493 4 Very Correct
86 .a Don't Know
19 .b No Response
*/

svy: tab z_c_gmomosq

/*z_c_larvicide: Believes larvicide use has increased microcephaly cases
522 1 Not Correct
217 2 A Little Correct
305 3 More or Less Correct
423 4 Very Correct
53 .a Don't Know
12 .b No Response
*/

svy: tab z_c_larvicide

/*z_c_vac: Believes vaccination of pregnant women has increased microcephaly cases
512 1 Not Correct
211 2 A Little Correct
324 3 More or Less Correct
413 4 Very Correct
57 .a Don't Know
15 .b No Response
*/

svy: tab z_c_vac

*Assessment of RISK,respondent EXPOSURE, openness to INFO.
rename zik1 zik_risk
rename zik2 zik_diag_self
rename zik3 zik_diag_family
rename zikpamph zik_pamphlet

*Define value labels for the risk variable.
label define riskLabel 1 "None" 2 "Very low" 3 "Low" 4 "Moderate" 5 "High" 6 "Very high"
label value zik_risk riskLabel

*KNOWLEDGE of Zika transmission vectors
rename ziktf1 zik_trans_sex
rename ziktf2 zik_trans_casual
rename ziktf3 zik_trans_mosquito

*Trust in Public Health Ministry
rename braminh5 trust_min_health

*Approval of PUBLIC HEALTH POLICIES
rename zikpol1 zik_appr_larvicide
rename zikpol2 zik_appr_vaccine
rename zikpol3 zik_appr_gmo
rename zikpol4 zik_appr_enter

*Self-reported PROTECTIVE ACTIONS
rename zikpr1 zik_pro_clothes
rename zikpr2 zik_pro_repellant
rename zikpr3 zik_pro_screen

*Belief in ZIKA-RELATED CONSPIRACY narratives.
rename zconsp1 zik_ct_larv
rename zconsp2 zik_ct_vacc
rename ziktf4 zik_ct_gmo

*Respondent tendency to OSTRACIZE infected persons.
rename zik4a zik_avoid_contact
rename zik4b zik_shame
rename zik4c zik_deserve
rename zik4d zik_no_sit

*Assessment of support for infected persons among broader community.
rename zik3a community_support

*Redefine (shorter) value labels for the community support variable.
label define communityLabel 1 "Avoid, even if unfriendly" 2 "Avoid, but friendly" 3 "Offer support"
label value community_support communityLabel


*ENUMERATOR ASSESSMENTS of risk conditions at place of residence.
rename zikarea1 enum_screen
rename zikarea2 enum_water

*Presidsposition toward CTs IN GENERAL.
rename consp1 ct_cabal
rename consp2 ct_psychic
rename consp3 ct_spirits
rename consp4 ct_fatalism

*Individual DEMOGRAPHICS (sex and educ also included - no need to rename) and family characteristics
rename q10g income_personal
rename q10new income_house

*Recode answers to incorrect statements about Zika transmission to generate a transmission knowledge index. (Necessary the "casual contact" statement is incorrect, such that stronger agreement indicates lower knowledge.)
recode zik_trans_casual 1=4 2=3 3=2 4=1, gen(zik_trans_casual_invert)

*RECODING

*Recode answer to enumerator risk assessment question that is coded such that higher value corresponds to lower risk. Generate an inverted variable that reflects higher value, higher risk
recode enum_screen 1=4 2=3 3=2 4=1, gen(enum_screen_invert)

*Recode answers to Zika protections questions so that higher values correspond to more self-protection.
recode zik_pro_clothes 1=5 2=4 4=2 5=1
recode zik_pro_repellant 1=5 2=4 4=2 5=1
recode zik_pro_screen 1=5 2=4 4=2 5=1

label define proLabel 1 "Never" 2 "Rarely" 3 "Sometimes" 4 "Almost Always" 5 "Always"

label value zik_pro_clothes proLabel
label value zik_pro_repellant proLabel
label value zik_pro_screen proLabel

*Recode answers to ostracism questions because 1 is "agree" and 2 is "disagree" in original data.
recode zik_avoid_contact 1=2 2=1
recode zik_shame 1=2 2=1
recode zik_deserve 1=2 2=1
recode zik_no_sit 1=2 2=1

label define ostracismLabel 1 "Disagree" 2 "Agree"

label value zik_avoid_contact ostracismLabel
label value zik_shame ostracismLabel
label value zik_deserve ostracismLabel
label value zik_no_sit ostracismLabel

*FACTOR ANALYSIS

*Self-protective behaviors /* a=.55 */
factor zik_pro_clothes zik_pro_repellant zik_pro_screen, pcf 
rotate, varimax 
alpha zik_pro_clothes zik_pro_repellant zik_pro_screen, item casewise gen(ZikProtection) 

*Knowledge /* a=.29 */
factor zik_trans_sex zik_trans_mosquito zik_trans_casual_invert, pcf
rotate, varimax
alpha zik_trans_sex zik_trans_mosquito zik_trans_casual_invert, item casewise gen(ZikKnowledge) 

*Policy support /* a=.60 */
factor zik_appr_larvicide zik_appr_vaccine zik_appr_gmo zik_appr_enter, pcf
rotate, varimax
alpha zik_appr_larvicide zik_appr_vaccine zik_appr_gmo zik_appr_enter, item casewise gen(ZikPolicy) 

*Zika CTs /* a=.57 */
factor zik_ct_larv zik_ct_vacc zik_ct_gmo, pcf
rotate, varimax
alpha zik_ct_larv zik_ct_vacc zik_ct_gmo, item casewise gen(ZikCT) 

*General CT disposition /* a=.44 */
factor ct_cabal ct_psychic ct_spirit ct_fatalism, pcf
rotate, varimax
alpha ct_cabal ct_psychic ct_spirit ct_fatalism, item casewise gen(CT_Disposition) 

*Zika ostracism /* a=.66 */
factor zik_avoid_contact zik_shame zik_deserve zik_no_sit, pcf
rotate, varimax
alpha zik_avoid_contact zik_shame zik_deserve zik_no_sit, item casewise gen(ZikOstracize) 

*Label the new indices.
lab var ZikPolicy "Index of Support for Zika Public Health Policies"
lab var ZikCT "Index of Belief in Zika-Related CTs"
lab var ZikProtection "Index of Self-Reported Zika Protection Actions"
lab var ZikOstracize "Index of Ostracism of Zika Infected Persons" 

*enumerator-observed risk
gen environ_risk_ind = (enum_water + enum_screen_invert)/2
lab var environ_risk_ind "Index of Environmental Zika Risk"

xtile inc_q=income_h,nq(4)


/*descriptives*/

svyset upm [pw=wt], strata(estratopri)

*text 
svy: tab z_healthrisk

svy: tab z_t_mosq
svy: tab z_t_sex
svy: tab zik_trans_casual

svy: tab z_c_gmomosq
svy: tab z_c_larvicide
svy: tab z_c_vac

alpha zik_ct_larv zik_ct_vacc zik_ct_gmo, item

*Table S2

svy: tab male 
svy: tab ethnicity 
_pctile age [pweight=wt], p(50)
return list
gen secondarycomplete=educ>=11 if educ!=.
svy: tab secondarycomplete
_pctile householdinc [pweight=wt], p(50)
return list
svy: tab ideology
svy: mean consp_cabal
count

***
preserve
gen belief2=(z_t_mosq>=3) if z_t_mosq!=.
gen belief3=(z_t_sex>=3) if z_t_sex!=.
gen belief4=(zik_trans_casual>=3) if zik_trans_casual!=.

reshape long belief,i(uniq_id) j(dv)

gen dummyvar=1

*Figure 1a
cibar belief [pweight=wt], over1(dummyvar) over2(dv) bargap(25) barcolor(gs12) baropts(lcolor(black)) graphopts(ytitle("") scheme(plotplain) ylabel(0 "0%" .2 "20%" .4 "40%" .6 "60%" .8 "80%" 1 "100%",angle(0) labsize(*1.5)) legend(off) xlabel(1 `" "Spread by"  "mosquitoes (T)" "' 2.925 `" "Spread by"  "sexual contact (T)" "' 4.845 `" "Spread by"  "casual contact (F)" "', labsize(*1.5)))

restore
***

preserve
gen belief2=(z_c_gmomosq>=3) if z_c_gmomosq!=.
gen belief3=(z_c_larvicide>=3) if z_c_larvicide!=.
gen belief4=(z_c_vac>=3) if z_c_vac!=.

reshape long belief,i(uniq_id) j(dv)

gen dummyvar=1

*Figure 1b
cibar belief [pweight=wt], over1(dummyvar) over2(dv) bargap(25) barcolor(gs12) baropts(lcolor(black)) graphopts(ytitle("") scheme(plotplain) ylabel(0 "0%" .2 "20%" .4 "40%" .6 "60%" .8 "80%" 1 "100%",angle(0) labsize(*1.5)) legend(off) xlabel(1 `" "GMO mosquitoes"  "spread Zika (F)" "' 2.925 `" "Larvicides increased"  "microcephaly (F)" "' 4.845 `" "Vaccines increased"  "microcephaly (F)" "', labsize(*1.5)))

restore

gen age1630=(age<31)
gen age3145=(age>30 & age<46)
gen age4660=(age>45 & age<61)
gen age60plus=(age>60 & age<120)

svy: regress zik_trans_mosquito ed i.inc_q male age3145 age4660 age60plus urban i.region 
est store A

svy: regress zik_trans_sex ed i.inc_q male age3145 age4660 age60plus urban i.region 
est store B

svy: regress zik_trans_casual ed i.inc_q male age3145 age4660 age60plus urban i.region 
est store C
 
svy: regress ZikCT ed i.inc_q male age3145 age4660 age60plus urban i.region 
est store D

*Table 1
estout A B C D, style(tex) replace varwidth(25) collabels("") cells(b(star fmt(%9.2f)) se(par fmt(%9.2f))) stats(r2 N, fmt(%9.2f %9.0f) labels("R2" "N")) starlevels(* 0.05 ** 0.01 *** 0.005) 
